package com.hl.domain;

import java.math.BigDecimal;
import java.util.List;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.core.annotation.Excel;
import com.ruoyi.common.core.web.domain.BaseEntity;

/**
 * 平台商品对象 product_platform
 *
 * @author ruoyi
 * @date 2025-08-07
 */
public class ProductPlatform extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 商品ID */
    private Integer id;

    /** 删除标志 1/0 删除/未删除 */
    @Excel(name = "删除标志 1/0 删除/未删除")
    private Integer deleteFlag;

    /** 商品名称 */
    @Excel(name = "商品名称")
    private String productName;

    /** 商品编号 */
    @Excel(name = "商品编号")
    private String productSn;

    /** 计量单位 */
    @Excel(name = "计量单位")
    private String productUnit;

    /** 商品详情 */
    @Excel(name = "商品详情")
    private String description;

    /** 商品移动端详情 */
    @Excel(name = "商品移动端详情")
    private String mobileDescription;

    /** 商品卖点 */
    @Excel(name = "商品卖点")
    private String sellingPoint;

    /** 销售价格 */
    @Excel(name = "销售价格")
    private BigDecimal price;

    /** 成本价格 */
    @Excel(name = "成本价格")
    private BigDecimal costPrice;

    /** 原价/市场价 */
    @Excel(name = "原价/市场价")
    private BigDecimal originalPrice;

    /** 库存数量 */
    @Excel(name = "库存数量")
    private Integer stock;

    /** 已售数量 */
    @Excel(name = "已售数量")
    private Integer soldNum;

    /** 商品重量(kg) */
    @Excel(name = "商品重量(kg)")
    private BigDecimal weight;

    /** 主图路径 */
    @Excel(name = "主图路径")
    private String mainImage;

    /** 缩略图路径 */
    @Excel(name = "缩略图路径")
    private String thumbnail;

    /** 商品视频 */
    @Excel(name = "商品视频")
    private String productVideo;

    /** 商品相册 */
    @Excel(name = "商品相册")
    private String imageGallery;

    /** 状态 */
    @Excel(name = "状态")
    private Integer status;

    /** 是否推荐 */
    @Excel(name = "是否推荐")
    private Integer isRecommend;

    /** 是否热销 */
    @Excel(name = "是否热销")
    private Integer isHot;

    /** 是否新品 */
    @Excel(name = "是否新品")
    private Integer isNew;

    /** 审核信息 */
    @Excel(name = "审核信息")
    private Integer auditStatus;

    /** 审核状态 */
    @Excel(name = "审核状态")
    private String auditMessage;

    /** 商品类型ID */
    @Excel(name = "商品类型ID")
    private Integer categoryId;

    /** 商品类型名称 */
    @Excel(name = "商品类型名称")
    private String categoryName;

    /** 品牌ID */
    @Excel(name = "品牌ID")
    private Integer brandId;

    /** 店铺ID */
    @Excel(name = "店铺ID")
    private Integer shopId;

    /** 店铺名称 */
    @Excel(name = "店铺名称")
    private String shopName;

    /** 运费模板ID */
    @Excel(name = "运费模板ID")
    private Integer templateId;

    /** 商品参数 */
    @Excel(name = "商品参数")
    private String productParams;

    /** 商品规格 */
    @Excel(name = "商品规格")
    private String specs;

    /** 评论数量 */
    @Excel(name = "评论数量")
    private Integer commentNum;

    /** 商品评分 */
    @Excel(name = "商品评分")
    private BigDecimal grade;

    /** 销售模式 */
    @Excel(name = "销售模式")
    private String salesModel;

    /** 是否自营 */
    @Excel(name = "是否自营")
    private Integer isSelfOperated;

    /** 商品分类信息 */
    private List<ProductCategory> productCategoryList;

    public void setId(Integer id)
    {
        this.id = id;
    }

    public Integer getId()
    {
        return id;
    }

    public void setDeleteFlag(Integer deleteFlag)
    {
        this.deleteFlag = deleteFlag;
    }

    public Integer getDeleteFlag()
    {
        return deleteFlag;
    }

    public void setProductName(String productName)
    {
        this.productName = productName;
    }

    public String getProductName()
    {
        return productName;
    }

    public void setProductSn(String productSn)
    {
        this.productSn = productSn;
    }

    public String getProductSn()
    {
        return productSn;
    }

    public void setProductUnit(String productUnit)
    {
        this.productUnit = productUnit;
    }

    public String getProductUnit()
    {
        return productUnit;
    }

    public void setDescription(String description)
    {
        this.description = description;
    }

    public String getDescription()
    {
        return description;
    }

    public void setMobileDescription(String mobileDescription)
    {
        this.mobileDescription = mobileDescription;
    }

    public String getMobileDescription()
    {
        return mobileDescription;
    }

    public void setSellingPoint(String sellingPoint)
    {
        this.sellingPoint = sellingPoint;
    }

    public String getSellingPoint()
    {
        return sellingPoint;
    }

    public void setPrice(BigDecimal price)
    {
        this.price = price;
    }

    public BigDecimal getPrice()
    {
        return price;
    }

    public void setCostPrice(BigDecimal costPrice)
    {
        this.costPrice = costPrice;
    }

    public BigDecimal getCostPrice()
    {
        return costPrice;
    }

    public void setOriginalPrice(BigDecimal originalPrice)
    {
        this.originalPrice = originalPrice;
    }

    public BigDecimal getOriginalPrice()
    {
        return originalPrice;
    }

    public void setStock(Integer stock)
    {
        this.stock = stock;
    }

    public Integer getStock()
    {
        return stock;
    }

    public void setSoldNum(Integer soldNum)
    {
        this.soldNum = soldNum;
    }

    public Integer getSoldNum()
    {
        return soldNum;
    }

    public void setWeight(BigDecimal weight)
    {
        this.weight = weight;
    }

    public BigDecimal getWeight()
    {
        return weight;
    }

    public void setMainImage(String mainImage)
    {
        this.mainImage = mainImage;
    }

    public String getMainImage()
    {
        return mainImage;
    }

    public void setThumbnail(String thumbnail)
    {
        this.thumbnail = thumbnail;
    }

    public String getThumbnail()
    {
        return thumbnail;
    }

    public void setProductVideo(String productVideo)
    {
        this.productVideo = productVideo;
    }

    public String getProductVideo()
    {
        return productVideo;
    }

    public void setImageGallery(String imageGallery)
    {
        this.imageGallery = imageGallery;
    }

    public String getImageGallery()
    {
        return imageGallery;
    }

    public void setStatus(Integer status)
    {
        this.status = status;
    }

    public Integer getStatus()
    {
        return status;
    }

    public void setIsRecommend(Integer isRecommend)
    {
        this.isRecommend = isRecommend;
    }

    public Integer getIsRecommend()
    {
        return isRecommend;
    }

    public void setIsHot(Integer isHot)
    {
        this.isHot = isHot;
    }

    public Integer getIsHot()
    {
        return isHot;
    }

    public void setIsNew(Integer isNew)
    {
        this.isNew = isNew;
    }

    public Integer getIsNew()
    {
        return isNew;
    }

    public void setAuditStatus(Integer auditStatus)
    {
        this.auditStatus = auditStatus;
    }

    public Integer getAuditStatus()
    {
        return auditStatus;
    }

    public void setAuditMessage(String auditMessage)
    {
        this.auditMessage = auditMessage;
    }

    public String getAuditMessage()
    {
        return auditMessage;
    }

    public void setCategoryId(Integer categoryId)
    {
        this.categoryId = categoryId;
    }

    public Integer getCategoryId()
    {
        return categoryId;
    }

    public void setCategoryName(String categoryName)
    {
        this.categoryName = categoryName;
    }

    public String getCategoryName()
    {
        return categoryName;
    }

    public void setBrandId(Integer brandId)
    {
        this.brandId = brandId;
    }

    public Integer getBrandId()
    {
        return brandId;
    }

    public void setShopId(Integer shopId)
    {
        this.shopId = shopId;
    }

    public Integer getShopId()
    {
        return shopId;
    }

    public void setShopName(String shopName)
    {
        this.shopName = shopName;
    }

    public String getShopName()
    {
        return shopName;
    }

    public void setTemplateId(Integer templateId)
    {
        this.templateId = templateId;
    }

    public Integer getTemplateId()
    {
        return templateId;
    }

    public void setProductParams(String productParams)
    {
        this.productParams = productParams;
    }

    public String getProductParams()
    {
        return productParams;
    }

    public void setSpecs(String specs)
    {
        this.specs = specs;
    }

    public String getSpecs()
    {
        return specs;
    }

    public void setCommentNum(Integer commentNum)
    {
        this.commentNum = commentNum;
    }

    public Integer getCommentNum()
    {
        return commentNum;
    }

    public void setGrade(BigDecimal grade)
    {
        this.grade = grade;
    }

    public BigDecimal getGrade()
    {
        return grade;
    }

    public void setSalesModel(String salesModel)
    {
        this.salesModel = salesModel;
    }

    public String getSalesModel()
    {
        return salesModel;
    }

    public void setIsSelfOperated(Integer isSelfOperated)
    {
        this.isSelfOperated = isSelfOperated;
    }

    public Integer getIsSelfOperated()
    {
        return isSelfOperated;
    }

    public List<ProductCategory> getProductCategoryList()
    {
        return productCategoryList;
    }

    public void setProductCategoryList(List<ProductCategory> productCategoryList)
    {
        this.productCategoryList = productCategoryList;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
                .append("id", getId())
                .append("createBy", getCreateBy())
                .append("createTime", getCreateTime())
                .append("deleteFlag", getDeleteFlag())
                .append("updateBy", getUpdateBy())
                .append("updateTime", getUpdateTime())
                .append("productName", getProductName())
                .append("productSn", getProductSn())
                .append("productUnit", getProductUnit())
                .append("description", getDescription())
                .append("mobileDescription", getMobileDescription())
                .append("sellingPoint", getSellingPoint())
                .append("price", getPrice())
                .append("costPrice", getCostPrice())
                .append("originalPrice", getOriginalPrice())
                .append("stock", getStock())
                .append("soldNum", getSoldNum())
                .append("weight", getWeight())
                .append("mainImage", getMainImage())
                .append("thumbnail", getThumbnail())
                .append("productVideo", getProductVideo())
                .append("imageGallery", getImageGallery())
                .append("status", getStatus())
                .append("isRecommend", getIsRecommend())
                .append("isHot", getIsHot())
                .append("isNew", getIsNew())
                .append("auditStatus", getAuditStatus())
                .append("auditMessage", getAuditMessage())
                .append("categoryId", getCategoryId())
                .append("brandId", getBrandId())
                .append("shopId", getShopId())
                .append("shopName", getShopName())
                .append("templateId", getTemplateId())
                .append("productParams", getProductParams())
                .append("specs", getSpecs())
                .append("commentNum", getCommentNum())
                .append("grade", getGrade())
                .append("salesModel", getSalesModel())
                .append("isSelfOperated", getIsSelfOperated())
                .append("productCategoryList", getProductCategoryList())
                .toString();
    }
}
